import MarkdownIt from 'markdown-it'
import MarkdownItSub from 'markdown-it-sub'
import MarkdownItFootnote from 'markdown-it-footnote'
import MarkdownItContainer from 'markdown-it-container'
import MarkdownItTable from 'markdown-it-multimd-table'
import MarkdownItAbbr from 'markdown-it-abbr'
import hljs from 'highlight.js'  // 引入highlight.js库
import 'highlight.js/styles/github.css'
import '../styles/github.css'
const md = new MarkdownIt({
    html: true, // 在源码中启用 HTML 标签
    linkify: true,
    typographer: true,
    xhtmlOut: true,  // 使用 '/' 来闭合单标签 （比如 <br />）。
    // 设置代码高亮的配置
    highlight: function (code, language) {
        if (language && hljs.getLanguage(language)) {
            try {
                return `<pre><code class="hljs language-${language}">` +
                    hljs.highlight(code, {language}).value +
                    '</code></pre>';
            } catch (__) { /* empty */
            }
        }
        return '<pre class="hljs"><code>' + md.utils.escapeHtml(code) + '</code></pre>';
    }
})
    .use(MarkdownItSub)
    .use(MarkdownItFootnote)
    .use(MarkdownItContainer)
    .use(MarkdownItTable)
    .use(MarkdownItAbbr)
md.renderer.rules.footnote_block_open = () => (
    '<h4 class="mt-3">Footnotes</h4>\n' +
    '<section class="footnotes">\n' +
    '<ol class="footnotes-list">\n'
);
export default md
